1. Technical Field
The present disclosure relates generally to data compression, and more particularly to, compression of data stored in a database.
2. Related Art
A database is a collection of stored data that is logically related and that is accessible by one or more users or applications. A popular type of database is the relational database management system (RDBMS), which includes relational tables, also referred to as relations, made up of rows and columns (also referred to as tuples and attributes). Each row represents an occurrence of an entity defined by a table, with an entity being a person, place, thing, or other object about which the table contains information.
As opportunities to obtain more data in a database increase, so does the requirement for storage capacity. One way to reduce the amount of storage space used to store databases is through data compression. While compressing as much data as possible may be desirable from a storage-efficiency perspective, other factors may require consideration. In operating a database, various queries or other data-driven processes require data to be retrieved for use. Compressed data requires decompressing in order to be used. Thus, when compressing data, considerations regarding the amount of time required to decompress data must be taken into account when attempting to respond to database tasks as quickly and efficiently as possible.
One strategy in identifying data for compression and decompression may include determining the nature and frequency of use of data of a database table. Patterns of usage may allow a more efficient selection of data for compression. Various manners of compression may also be considered and applied singularly or in combination.